There are the class and package writer commands: most of these have long mixed-case names such as the following.
\InputIfFileExists \RequirePackage \PassOptionsToClass
Finally, there are the internal commands used in the LATEX implementation, such as |tempcnta|, |ifnextchar| and |eha|: most of these commands contain |@| in their name, which means they cannot be used in documents, only in class and package files.
Unfortunately, for historical reasons the distinction between these commands is often blurred. For example, || is an internal command which should only be used in the LATEX kernel, whereas |@ne| is the constant -1 and could have been ||.
However, this rule of thumb is still useful: if a command has |@| in its name then it is not part of the supported LATEX language—and its behaviour may change in future releases! If a command is mixed-case, or is described in , then you can rely on future releases of LATEX2e supporting the command.